dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
↳ QTRS
↳ Overlay + Local Confluence
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
INDX(cons(X, Y), Z) → SEL(X, Z)
DBLS(cons(X, Y)) → DBL(X)
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
DBLS(cons(X, Y)) → DBLS(Y)
DBL(s(X)) → DBL(X)
FROM(X) → FROM(s(X))
INDX(cons(X, Y), Z) → INDX(Y, Z)
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
INDX(cons(X, Y), Z) → SEL(X, Z)
DBLS(cons(X, Y)) → DBL(X)
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
DBLS(cons(X, Y)) → DBLS(Y)
DBL(s(X)) → DBL(X)
FROM(X) → FROM(s(X))
INDX(cons(X, Y), Z) → INDX(Y, Z)
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
INDX(cons(X, Y), Z) → SEL(X, Z)
DBLS(cons(X, Y)) → DBL(X)
DBLS(cons(X, Y)) → DBLS(Y)
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
DBL(s(X)) → DBL(X)
INDX(cons(X, Y), Z) → INDX(Y, Z)
FROM(X) → FROM(s(X))
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
FROM(X) → FROM(s(X))
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
s1 > SEL1
cons2 > SEL1
SEL1: [1]
s1: multiset
cons2: multiset
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
INDX(cons(X, Y), Z) → INDX(Y, Z)
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
INDX(cons(X, Y), Z) → INDX(Y, Z)
cons2 > INDX1
INDX1: [1]
cons2: multiset
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
DBL(s(X)) → DBL(X)
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
DBL(s(X)) → DBL(X)
s1 > DBL1
s1: multiset
DBL1: [1]
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
DBLS(cons(X, Y)) → DBLS(Y)
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
DBLS(cons(X, Y)) → DBLS(Y)
cons2 > DBLS1
DBLS1: [1]
cons2: multiset
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)